/* 从有序表中删除值重复的元素 */
#include <iostream>
#include "sqlist.cpp"
using namespace std;

// 删除重复元素 -- 已知顺序表有序
bool del(Sqlist &L)
{
  int i, j;
  
  // 遍历有序表 -- i表示下一个元素插入的位置
  for (i = 0, j = 1; j < L.length; ++j)
    if (L.data[i] != L.data[j]) // 元素不重复
      L.data[++i] = L.data[j]; // 插入
      
  // 更新长度
  L.length = i + 1;
  
  // 删除成功
  return true;
}

int main()
{
  // 创建有序表
  Sqlist L = {{12, 13, 13, 13, 19}, 5};
  
  // 删除重复元素
  del(L);
  
  // 打印
  for (int j = 0; j < L.length; ++j)
    cout << L.data[j] << " ";
}